<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<head>
<link rel="STYLESHEET" href="lib.css" type='text/css' />
<link rel="SHORTCUT ICON" href="../icons/pyfav.png" type="image/png" />
<link rel='start' href='../index.html' title='Python documentation Index' />
<link rel="first" href="lib.html" title='Python library Reference' />
<link rel='contents' href='contents.html' title="Contents" />
<link rel='index' href='genindex.html' title='Index' />
<link rel='last' href='about.html' title='About this document...' />
<link rel='help' href='about.html' title='About this document...' />
<link rel="prev" href="interpreter-objects.html" />
<link rel="parent" href="module-code.html" />
<link rel="next" href="module-codeop.html" />
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<meta name='aesop' content='information' />
<title>27.1.2 Interactive Console Objects </title>
</head>
<body>
<div class="navigation">
<div id='top-navigation-panel' xml:id='top-navigation-panel'>
<table align="center" width="100%" cellpadding="0" cellspacing="2">
<tr>
<td class='online-navigation'><a rel="prev" title="27.1.1 interactive Interpreter Objects"
  href="interpreter-objects.html"><img src='../icons/previous.png'
  border='0' height='32'  alt='Previous Page' width='32' /></a></td>
<td class='online-navigation'><a rel="parent" title="27.1 code  "
  href="module-code.html"><img src='../icons/up.png'
  border='0' height='32'  alt='Up one Level' width='32' /></a></td>
<td class='online-navigation'><a rel="next" title="27.2 codeop  "
  href="module-codeop.html"><img src='../icons/next.png'
  border='0' height='32'  alt='Next Page' width='32' /></a></td>
<td align="center" width="100%">Python Library Reference</td>
<td class='online-navigation'><a rel="contents" title="Table of Contents"
  href="contents.html"><img src='../icons/contents.png'
  border='0' height='32'  alt='Contents' width='32' /></a></td>
<td class='online-navigation'><a href="modindex.html" title="Module Index"><img src='../icons/modules.png'
  border='0' height='32'  alt='Module Index' width='32' /></a></td>
<td class='online-navigation'><a rel="index" title="Index"
  href="genindex.html"><img src='../icons/index.png'
  border='0' height='32'  alt='Index' width='32' /></a></td>
</tr></table>
<div class='online-navigation'>
<b class="navlabel">Previous:</b>
<a class="sectref" rel="prev" href="interpreter-objects.html">27.1.1 Interactive Interpreter Objects</a>
<b class="navlabel">Up:</b>
<a class="sectref" rel="parent" href="module-code.html">27.1 code  </a>
<b class="navlabel">Next:</b>
<a class="sectref" rel="next" href="module-codeop.html">27.2 codeop  </a>
</div>
<hr /></div>
</div>
<!--End of Navigation Panel-->

<h2><a name="SECTION0029120000000000000000"></a><a name="console-objects"></a>
<br>
27.1.2 Interactive Console Objects
            
</h2>

<p>
The <tt class="class">InteractiveConsole</tt> class is a subclass of
<tt class="class">InteractiveInterpreter</tt>, and so offers all the methods of the
interpreter objects as well as the following additions.

<p>
<dl><dt><table cellpadding="0" cellspacing="0"><tr valign="baseline">
  <td><nobr><b><tt id='l2h-5322' xml:id='l2h-5322' class="method">interact</tt></b>(</nobr></td>
  <td><var></var><big>[</big><var>banner</var><big>]</big><var></var>)</td></tr></table></dt>
<dd>
Closely emulate the interactive Python console.
The optional banner argument specify the banner to print before the
first interaction; by default it prints a banner similar to the one
printed by the standard Python interpreter, followed by the class
name of the console object in parentheses (so as not to confuse this
with the real interpreter - since it's so close!).
</dl>

<p>
<dl><dt><table cellpadding="0" cellspacing="0"><tr valign="baseline">
  <td><nobr><b><tt id='l2h-5323' xml:id='l2h-5323' class="method">push</tt></b>(</nobr></td>
  <td><var>line</var>)</td></tr></table></dt>
<dd>
Push a line of source text to the interpreter.
The line should not have a trailing newline; it may have internal
newlines.  The line is appended to a buffer and the interpreter's
<tt class="method">runsource()</tt> method is called with the concatenated contents
of the buffer as source.  If this indicates that the command was
executed or invalid, the buffer is reset; otherwise, the command is
incomplete, and the buffer is left as it was after the line was
appended.  The return value is <code>True</code> if more input is required,
<code>False</code> if the line was dealt with in some way (this is the same as
<tt class="method">runsource()</tt>).
</dl>

<p>
<dl><dt><table cellpadding="0" cellspacing="0"><tr valign="baseline">
  <td><nobr><b><tt id='l2h-5324' xml:id='l2h-5324' class="method">resetbuffer</tt></b>(</nobr></td>
  <td><var></var>)</td></tr></table></dt>
<dd>
Remove any unhandled source text from the input buffer.
</dl>

<p>
<dl><dt><table cellpadding="0" cellspacing="0"><tr valign="baseline">
  <td><nobr><b><tt id='l2h-5325' xml:id='l2h-5325' class="method">raw_input</tt></b>(</nobr></td>
  <td><var></var><big>[</big><var>prompt</var><big>]</big><var></var>)</td></tr></table></dt>
<dd>
Write a prompt and read a line.  The returned line does not include
the trailing newline.  When the user enters the EOF key sequence,
<tt class="exception">EOFError</tt> is raised.  The base implementation uses the
built-in function <tt class="function">raw_input()</tt>; a subclass may replace this
with a different implementation.
</dl>

<div class="navigation">
<div class='online-navigation'>
<p></p><hr />
<table align="center" width="100%" cellpadding="0" cellspacing="2">
<tr>
<td class='online-navigation'><a rel="prev" title="27.1.1 interactive Interpreter Objects"
  href="interpreter-objects.html"><img src='../icons/previous.png'
  border='0' height='32'  alt='Previous Page' width='32' /></a></td>
<td class='online-navigation'><a rel="parent" title="27.1 code  "
  href="module-code.html"><img src='../icons/up.png'
  border='0' height='32'  alt='Up one Level' width='32' /></a></td>
<td class='online-navigation'><a rel="next" title="27.2 codeop  "
  href="module-codeop.html"><img src='../icons/next.png'
  border='0' height='32'  alt='Next Page' width='32' /></a></td>
<td align="center" width="100%">Python Library Reference</td>
<td class='online-navigation'><a rel="contents" title="Table of Contents"
  href="contents.html"><img src='../icons/contents.png'
  border='0' height='32'  alt='Contents' width='32' /></a></td>
<td class='online-navigation'><a href="modindex.html" title="Module Index"><img src='../icons/modules.png'
  border='0' height='32'  alt='Module Index' width='32' /></a></td>
<td class='online-navigation'><a rel="index" title="Index"
  href="genindex.html"><img src='../icons/index.png'
  border='0' height='32'  alt='Index' width='32' /></a></td>
</tr></table>
<div class='online-navigation'>
<b class="navlabel">Previous:</b>
<a class="sectref" rel="prev" href="interpreter-objects.html">27.1.1 Interactive Interpreter Objects</a>
<b class="navlabel">Up:</b>
<a class="sectref" rel="parent" href="module-code.html">27.1 code  </a>
<b class="navlabel">Next:</b>
<a class="sectref" rel="next" href="module-codeop.html">27.2 codeop  </a>
</div>
</div>
<hr />
<span class="release-info">Release 2.5.1, documentation updated on 18th April, 2007.</span>
</div>
<!--End of Navigation Panel-->
<address>
See <i><a href="about.html">About this document...</a></i> for information on suggesting changes.
</address>
</body>
</html>
